#ifndef __QpwSubType__
#define __QpwSubType__

#include <QtCore/QString>
#include <QtCore/QUuid>
#include "QpwDatabase.h"
// #include "QpwDecorationObject.h"
// #include "QpwGeometry.h"

class QpwSubType : public QpwXML::Row {
public:
    enum ObjectFunction {
        None,
        Player,
        Wall,
        Tree,
        Bush
    };

    explicit QpwSubType( const QUuid & uuid = QUuid() );
    virtual ~QpwSubType() {}

//     inline bool operator == ( const QpwSubType & subType ) { return this->uuid == subType.uuid; }
//     inline bool operator != ( const QpwSubType & subType ) { return this->uuid != subType.uuid; }

    QpwXML::Values values() const;
    void setValues( const QpwXML::Values & values );

    quint32 baseType;
    ObjectFunction objectFunction;
    QUuid styleUuid;
    QString name,
            description;
    quint32 health;
//     QpwWorld::Geometry geometry;
    QUuid geometryUuid;
    quint32 eventProcessorType,
            destroyProcessorType;
    qreal linearDamping,
          angularDamping,
          density,
          friction,
          mass;

};

#endif//__QpwSubType__
